package operation.constant;

/**
 * 常量
 */
public class AppConstant {
    /**
     * 数据库相关
     */
    // 数据源
    public static final String DATABASE_DATA_SOURCE = "dataSource";
    // 事务
    public static final String DATABASE_TRANSACTION_MANAGER = "transactionManager";
    // 数据源（定制wms）
    public static final String DATABASE_DATA_SOURCE_CUSTOM_WMS = "dataSourceCustomWMS";
    // SqlSession工厂（定制wms）
    public static final String DATABASE_SQL_SESSION_FACTORY_CUSTOM_WMS = "sqlSessionFactoryCustomWMS";
    // 事务（定制wms）
    public static final String DATABASE_TRANSACTION_MANAGER_CUSTOM_WMS = "transactionManagerCustomWMS";
    /**
     * 系统默认用户ID
     */
    public static final Long SYSTEM_DEFAULT_USER_ID = 0L;
    /**
     * 超级管理员ID
     */
    public static final int SUPER_ADMIN = 1;
    /**
     * 当前页码
     */
    public static final String PAGE = "pageIndex";
    /**
     * 每页显示记录数
     */
    public static final String LIMIT = "pageSize";
    /**
     * 排序字段
     */
    public static final String ORDER_FIELD = "sidx";
    /**
     * 排序方式
     */
    public static final String ORDER = "order";
    /**
     * 升序
     */
    public static final String ASC = "asc";
    /**
     * 数据创建者 - 系统
     */
    public static final Long CREATE_BY_SYSTEM = 0L;

    // 整型 - 否
    public static final Integer INTEGER_NO = 0;
    // 整型 - 是
    public static final Integer INTEGER_YES = 1;

    // 分页参数- 最大总记录数
    public static final Long MAXIMUM_TOTAL_OF_PAGINATION = 1000000000L;

    // 禁止查询总记录数
    public static final String PROHIBIT_SEARCHING_COUNT = "prohibitSearchingCount";


    /**
     * 完成情况 (0：完成；1：进行中；2：未完成)
     */
    public static final Integer COMPLETE_STATE_COMPLETE = 0;
    public static final Integer COMPLETE_STATE_PROCESSING = 1;
    public static final Integer COMPLETE_STATE_UNFINISHED = 2;
    /**
     * 完成情况 (完成；进行中；未完成)
     */
    public static final String COMPLETE = "完成";
    public static final String PROCESSING = "进行中";
    public static final String UNFINISHED = "未完成";
    /**
     * 定时任务状态
     */
    public enum ScheduleStatus {
        /**
         * 正常
         */
        NORMAL(1),
        /**
         * 暂停
         */
        PAUSE(0);

        private int value;

        ScheduleStatus(int value) {
            this.value = value;
        }

        public int getValue() {
            return value;
        }
    }

    // 消息队列 - 组名
    public static final String ONEPLUS_GROUP_ID_FIXTURE = "ONEPLUS_GROUP_ID_FIXTURE";

}
